package net.xiaowenhou.demo.dao;

import net.xiaowenhou.demo.model.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserMapper {
    //获取所有数据
    List<User> getAll(@Param(value = "startPage") int startPage, @Param(value = "size") int size);

    //根据主键查询一条记录
    User getOne(Long id);

    //计算总数
    Long count();

    //插入一条数据
    Long insert(User user);

    //批量插入
    int bachInsert(List<User> users);

    //删除一条数据
    Boolean delete(Long id);

    //批量删除一条数据
    Boolean bachDelete(List<Long> idList);

    //更新一条数据
    int update(User user);

    //批量更新
    int bachUpdate(List<User> users);

    //根据用户名和密码查询idList
    List<Long> getIdsByUserNameAndPassWord(@Param(value="userName") String userName, @Param(value="passWord") String passWord);

    //根据用户名和密码查询对象List
    List<User> getObjectsByUserNameAndPassWord(@Param(value="userName") String userName, @Param(value="passWord") String passWord);

    //根据idList查询对象List
    List<User> getObjectsByIdList(List<Long> idList);
}
